﻿#if EGOAL
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Reflection;
using System.Text;
using System.Data.Linq;

namespace EgoalTech.MTrade.Query
{
    class QueryableSourceProvider : IDataSourceProvider
    {
        private Assembly modelsAssembly;
        private DataContext dataContext;

        class Queryable : IQueryable, IQueryProvider
        {
            #region IQueryable
            IEnumerator IEnumerable.GetEnumerator()
            {
                throw new NotImplementedException();
            }

            Expression IQueryable.Expression
            {
                get { throw new NotImplementedException(); }
            }

            Type IQueryable.ElementType
            {
                get { throw new NotImplementedException(); }
            }

            IQueryProvider IQueryable.Provider
            {
                get { throw new NotImplementedException(); }
            }
            #endregion

            #region IQueryProvider
            IQueryable IQueryProvider.CreateQuery(Expression expression)
            {
                throw new NotImplementedException();
            }

            IQueryable<TElement> IQueryProvider.CreateQuery<TElement>(Expression expression)
            {
                throw new NotImplementedException();
            }

            object IQueryProvider.Execute(Expression expression)
            {
                throw new NotImplementedException();
            }

            TResult IQueryProvider.Execute<TResult>(Expression expression)
            {
                throw new NotImplementedException();
            }
            #endregion
        }

        public QueryableSourceProvider(Assembly modelsAssembly)
        {
            this.modelsAssembly = modelsAssembly;
            this.dataContext = CreateDataContext();
        }

        public IQueryable GetSource(string symbolName)
        {
            throw new NotImplementedException();
        }

        DataContext CreateDataContext()
        {
            throw new NotImplementedException();
        }

       


    }
}
#endif
